FE TDD
JeongSeulho
2024년 01월 19일
준비중...
클립보드로 복사
0. 들어가며
TDD란 무엇이며, FE에서 TDD를 어떻게 적용할 수 있을까?
1. Test Driven Development(TDD)란?
(1) 정의
- 개발 코드 작성 전에 요구 사항을 테스트 코드로 작성하고, 개발 코드를 작성하는 방식
- 테스트 실패 => 개발 코드 작성 => 테스트 통과 => 리팩토링 => 테스트 실패(리팩토링에서 오류 발생 시) => … 를 반복
(2) 장점
- 지속적인 테스트로 안정성 있는 작업
- 리팩토링 시 안정성 유지
(3) 단점
- 초기 개발 속도가 느리며 비용이 많이 듦
2. FE에서 TDD 적용하기
(1) TDD 도입이 불필요한 경우
- 정해진 기한상 빠른 개발이 필요한 경우
- UI만 보여주는 기능이 단순한 경우
- 스타일 검증처럼 적용이 불가능한 경우
(2) TDD 도입이 적합한 경우
- 공통 컴포넌트, 훅, 유틸리티 함수 등의 단위 테스트는 검증하고자 하는 기능이 명확하여 TDD 적용이 용이함
- 비즈니스 로직에 대한 통합 테스트는 상태 관리, API 호출, 컴포넌트 조합 등을 TDD를 통해 안정적으로 리팩토링할 수 있음